Generally described, computing devices utilize a communication network, or a series of communication networks, to exchange data. Companies and organizations operate computer networks that interconnect a number of computing devices to support operations or provide services to third parties. The computing systems can be located in a single geographic location or located in multiple, distinct geographic locations (e.g., interconnected via private and/or public communication networks). Specifically, data centers or data processing centers, herein generally referred to as “data centers,” may include a number of interconnected computing systems to provide computing resources to users of the data center. The data centers may be private data centers operated on behalf of an organization or public data centers operated on behalf, or for the benefit, of the general public.
Data centers may provide a number of network accessible services to computing devices. Further, data centers may store and maintain a variety of information related to or created by a variety of computing processes or services. For example, information may be stored in databases or other data stores, and made available to computing devices either within a data center or external to a data center. In order to access services or information provided by such services—a computing device may be required to know a network address at which a service may be reached. Further, in some embodiments, a computing device may be required to know an identifier associated with a specific item of information or service. By utilizing a network address to request information corresponding to an identifier of a service or information item, the service or information item may be accessed by a requesting computing device.
In some instances, an address of a service or information item may be independent of the service or information item itself. For example, services and information items may be made available via a variety of protocols. Each protocol may define common mechanisms by which computing devices (or other devices) may communicate with one another. Within a networked communication context, examples of protocols may include Hypertext Transfer Protocol (HTTP), Simple Mail Transfer Protocol (SMTP), and Simple Object Access Protocol (SOAP). Moreover, in some instances, multiple protocols may be used in conjunction. For example, SOAP and HTTP may be used in conjunction in order to transmit, receive or process information. Further, protocols may be modified or altered in order to suit the needs of the user of the protocol. For example, a developer of computing software may conform to the principals of Representational State Transfer (REST) when utilizing a protocol (e.g., HTTP), the combination of which may also be considered a “protocol” (e.g., “REST/HTTP”). Accordingly, a given service or information item may be made available at a variety of addresses (e.g., corresponding to different protocols, locations, etc.).